function climbStairs(n: number): number {
    // 难在解题思路 啊不对透过表象看本质
    // 如果要登上第n台阶 如果登一阶 那么就要考虑n-1有多少方案 如果两阶 那么就要考虑n-2有多少方案
    // 将问题转化为f(n) = f(n-1) + f(n-2)
    // 如果是三阶 f(3) = f(2) + f(1) 一阶是1种 二阶是2种 三阶是3
    if(n < 3) return n;
    const result = new Array();

    result[0] = 0;
    result[1] = 1;
    result[2] = 2;

    for(let i = 3; i <n+1;i++){
        result.push(result[i-1]+result[i-2]);
    }
    return result[n]
};

console.log(climbStairs(4))